/*
查找生词（search）
给定N个单词组成的熟词表，以及一篇全用小写英文书写的文章，请你按最早出现的顺序写出所有不在熟词表中的生词。
*/
#include <iostream>
#include <string>
#include <cstdio>
using namespace std;
const int maxn = 1000100;
struct Trie {
    int cnt;
    int son[26];
}a[maxn];
int cnt, n;
void inrt(string s) {
    int now = 0;
    for (int i = 0; i < s.length(); i++) {
        if (!a[now].son[s[i] - 'a']) {
            a[now].son[s[i] - 'a'] = ++cnt;
        }
        now = a[now].son[s[i] - 'a'];
        a[now].cnt++;
    }
}
bool query(string s) {
    int now = 0;
    for (int i = 0; i < s.length(); i++) {
        if (!a[now].son[s[i] - 'a']) return false;
        now = a[now].son[s[i] - 'a'];
    }
    return true;
}
int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin >> n;
    string tmp;
    for (int i = 1; i <= n; i++) {
        cin >> tmp;
        inrt(tmp);
    }
    while (cin >> tmp) {
        string inp = "";
        for (int i = 0; i < tmp.length(); i++) {
            if (tmp[i] >= 'a' && tmp[i] <= 'z') inp = inp + tmp[i];
        }
        if (!query(inp)) cout << inp << endl;
    }
    return 0;
}
